iT邦幫忙

2024 iThome 鐵人賽

DAY 8
0
Modern Web

ASP.NET Core的終極奧義:從零到無敵系列 第 8

Day_8 建立基本的CRUD操作裡面的UD

  • 分享至 

  • xImage
  •  

在這篇文章中,我們將繼續探討CRUD中的Update(更新)和Delete(刪除)操作。透過實作更新與刪除功能,你可以靈活地對資料進行修改和移除,這也是資料管理應用中不可或缺的一部分。


1. Update(更新)操作

在ASP.NET Core中,我們可以通過控制器來實現資料更新的功能。以下是一個範例,展示了如何更新一個學生資料:

public class StudentsController : Controller
{
    private readonly AppDbContext _context;

    public StudentsController(AppDbContext context)
    {
        _context = context;
    }

    [HttpGet]
    public IActionResult Edit(int id)
    {
        var student = _context.Students.Find(id);
        if (student == null)
        {
            return NotFound();
        }
        return View(student);
    }

    [HttpPost]
    public IActionResult Edit(Student student)
    {
        if (ModelState.IsValid)
        {
            _context.Students.Update(student);
            _context.SaveChanges();
            return RedirectToAction("Index");
        }
        return View(student);
    }
}

在這段程式碼中,我們首先使用[HttpGet]方法來顯示編輯表單,這會查找指定ID的學生資料並顯示在編輯視圖中。然後使用[HttpPost]方法處理表單提交,更新資料庫中的學生資料並保存變更。

對應的視圖(Edit.cshtml)會使用Razor語法來顯示編輯表單:

<form asp-action="Edit" method="post">
    <input type="hidden" asp-for="Id" />
    <div>
        <label>Name</label>
        <input asp-for="Name" />
    </div>
    <div>
        <label>Age</label>
        <input asp-for="Age" />
    </div>
    <button type="submit">Update</button>
</form>

這段HTML表單顯示了學生的名稱和年齡字段,允許用戶修改這些資料並提交更新。

2. Delete(刪除)操作

刪除操作允許你從資料庫中移除不再需要的資料。以下是一個範例,展示了如何刪除學生資料:

[HttpPost]
public IActionResult Delete(int id)
{
    var student = _context.Students.Find(id);
    if (student == null)
    {
        return NotFound();
    }
    _context.Students.Remove(student);
    _context.SaveChanges();
    return RedirectToAction("Index");
}

這段程式碼首先查找指定ID的學生資料,如果資料存在,就使用_context.Students.Remove()方法將其從資料庫中刪除,並保存變更。

對應的視圖(Delete.cshtml)可以使用以下方式顯示刪除確認表單:

<form asp-action="Delete" method="post">
    <input type="hidden" asp-for="Id" />
    <div>
        <p>Are you sure you want to delete this student?</p>
        <button type="submit">Delete</button>
    </div>
</form>

這段HTML表單顯示了一個刪除確認提示,並提供刪除按鈕。

3. 小結

在這篇文章中,我們介紹了如何在ASP.NET Core中實現基本的Update和Delete操作。這些操作讓你可以更新和刪除資料,從而更靈活地管理你的應用資料。接下來,我們將深入探討如何處理表單與驗證,進一步增強應用的功能和可靠性。


上一篇
Day_7 建立基本的CRUD操作裡面的CR
下一篇
Day_9 處理表單與驗證
系列文
ASP.NET Core的終極奧義:從零到無敵30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言